﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using NUnit.Framework;
using Grupo2.Persistencia;
using Grupo2.Dominio;

namespace Grupo2.Pruebas
{
    public class TestPostulacionDAO
    {
        [Test]
        public void TestCrearPostulacion()
        {
            Postulacion nuevaPostulacion = new Postulacion();
            nuevaPostulacion.Id_Postulacion = 1;
            nuevaPostulacion.Aviso.Id_Aviso = 1;
            nuevaPostulacion.Postulante.Id_Postulante = 1;
            nuevaPostulacion.Fecha_Postulacion = DateTime.Parse("10/05/2011");
            nuevaPostulacion.Estado_Postulacion = "Si";
            //nuevaPostulacion.Postulacion_Seleccionada = true;
            nuevaPostulacion.Postulacion_Seleccionada = "S";
            nuevaPostulacion.Fecha_Seleccion = DateTime.Parse("10/05/2011");
            PostulacionDAO PostulacionDAO = new PostulacionDAO();
            Postulacion PostulacionCreada = PostulacionDAO.CrearPostulacion(nuevaPostulacion);
            Assert.NotNull(PostulacionCreada);
        }

        [Test]
        public void TestObtenerPostulacion()
        {
            Int32 nId_Postulacion = 1;
            PostulacionDAO oPostulacion = new PostulacionDAO();
            Postulacion oPostulacionExistente = oPostulacion.ObtenerPostulacion(nId_Postulacion);
            Assert.AreEqual(nId_Postulacion, oPostulacionExistente.Id_Postulacion);
            Assert.NotNull(oPostulacionExistente.Fecha_Postulacion);
            Assert.NotNull(oPostulacionExistente.Estado_Postulacion);
            Assert.NotNull(oPostulacionExistente.Postulacion_Seleccionada);
            Assert.NotNull(oPostulacionExistente.Fecha_Seleccion);
        }

        [Test]
        public void TestEliminarPostulacion()
        {
            Int32 nId_postulacion = 1;
            PostulacionDAO oPostulacion = new PostulacionDAO();
            Postulacion oPostulacionExistente = oPostulacion.ObtenerPostulacion(nId_postulacion);
            if (oPostulacionExistente.Id_Postulacion == nId_postulacion)
            {
                oPostulacion.EliminarPostulacion(oPostulacionExistente.Id_Postulacion);
            }

        }
    }
}